<?php
/**
 * @Author:      lyt
 * @DateTime:    2016-03-01 11:09:44
 * @Description: 门店 出库单的详情
 */
class MaintenanceOutItem extends Eloquent
{
    protected $table = "maintenance_out_item";


    /**
     * @Author:      lyt
     * @DateTime:    2016-03-05 16:19:40
     * @Description: 传入一个 出库申请单 传入一个 退货数量
     * 查询 该出库单 返回需要的 出库批次 和入库批次的 信息
     */
    public static function getReturnStorageItem($moo,$number){
    	$moi=DB::select("SELECT moi.id,moi.number,moi.return_numer,msi.id ms_id FROM `maintenance_out_item` moi 
    		LEFT JOIN maintenance_storage_item msi on msi.id=moi.storage_id 
			where moi.order_out_id =? and moi.`status`=1 and moi.number>moi.return_numer order by msi.created_at desc",array($moo->id));//按照出库申请单 查出 出库单 的 使用的入库耗材批次的倒序 
    	$finally_array=array();
    	foreach ($moi as $_moi) {
    		$can_return_number=$_moi->number-$_moi->return_numer;//第一个出库批次可以退货的个数
    		$temp_number=$number-$can_return_number;
    		if($temp_number>0){//说明 该出库批次 不足以完成此次退货 这个批次剩余可退的全部退货  修改需要退货的数量 进行下次循环
    			$_moi->user_number=$can_return_number;
    			$number=$temp_number;
    			$finally_array[]=$_moi;
    		}else{//说明 该批次已经满足出库需要  出库数量 就是 剩余数量
    			$_moi->user_number=$number;
    			$finally_array[]=$_moi;
    			break;
    		}
    	}
    	return $finally_array;
    }

}